home *** CD-ROM | disk | FTP | other *** search
GW-BASIC | 1986-11-13 | 4.2 KB | 109 lines |
- 10 KEY OFF:KEY(10) ON:ON KEY(10) GOSUB 660:KEY(9) ON:ON KEY(9) GOSUB 420:DIM S(25):FOR I=1 TO 25:S(I)=I:NEXT I:COLOR 3,0,8
- 20 CLS:T=0:N=0:GOSUB 1070:FOR I=1 TO 100:SWAP S(INT(RND*25+1)),S(INT(RND*25+1)):NEXT I
- 30 CLS:LOCATE 1,34:COLOR 0,7:PRINT" IQ Builder ":COLOR 11,0
- 40 LOCATE 2,35:PRINT"Numbers 2":COLOR 0,11
- 50 LOCATE 4,21:PRINT CHR$(201);
- 60 FOR J=1 TO 35
- 70 PRINT CHR$(205);
- 80 IF J > 35 GOTO 100
- 90 NEXT J
- 100 PRINT CHR$(187)
- 110 LOCATE 5,21:PRINT CHR$(186);:PRINT"Press <F9> to skip to next section.";
- 120 PRINT CHR$(186)
- 130 LOCATE 6,21:PRINT CHR$(186);:PRINT"Press <F10> to return to main menu.";
- 140 PRINT CHR$(186)
- 150 LOCATE 7,21:PRINT CHR$(200);
- 160 FOR J=1 TO 35
- 170 PRINT CHR$(205);
- 180 IF J > 35 GOTO 200
- 190 NEXT J
- 200 PRINT CHR$(188):COLOR 3,0
- 210 LOCATE 9,1:PRINT"There are 25 series to solve in this lesson. You'll get three chances to"
- 220 PRINT"solve each one. If you're having trouble, the computer will give you a hint."
- 230 FOR I=1 TO 100:SWAP S(INT(RND*25+1)),S(INT(RND*25+1)):NEXT I:XX=1:N=S(XX)
- 240 RESTORE
- 250 IF N>1 THEN FOR O=1 TO N-1:READ A,B,C,D,E,F,G,H,I,J,K,A$:NEXT O:Q=N-1
- 260 READ A,B,C,D,E,F,G,H,I,J,K,A$
- 270 T=T+1:Q=Q+1
- 280 PRINT:PRINT"Series" Q:COLOR 3,0:PRINT
- 290 PRINT"Enter the next two numbers in this series, separating them with a comma:"
- 300 PRINT:GOSUB 750:PRINT:COLOR 3,0
- 310 COLOR 3,0:INPUT "The next two numbers are: ",X,Y
- 320 Y1=CSRLIN:X1=POS(0)
- 330 IF (X=I)*(Y=J) THEN 380
- 340 Z=Z+1:IF Z=3 THEN 370
- 350 IF Z=2 THEN GOSUB 680:GOTO 310
- 360 LOCATE 25,1:PRINT SPC(79);:PLAY "mfn27n20t32":LOCATE 25,1:COLOR 11,4:PRINT"No! Try again.";:COLOR 3,0:TIMEOUT=3:GOSUB 1040:LOCATE 25,1:PRINT SPC(79);:LOCATE Y1-1,X1+25:PRINT SPC(6):LOCATE ,X1:GOTO 310
- 370 PLAY "mbn26n20t35":PRINT:COLOR 11,4:PRINT"No! The answer is: " I "," J;:GOTO 400
- 380 IF Z=0 THEN R=R+1
- 390 LOCATE 25,1:PRINT SPC(79);:LOCATE 25,1:PRINT"Right!";:TIMEOUT=3:GOSUB 1040:LOCATE 25,1:PRINT SPC(79);:LOCATE Y1,X1
- 400 XX=XX+1:Z=0
- 410 IF XX<26 THEN S=S(XX):GOSUB 1030:GOTO 230
- 420 COLOR 11,4:LOCATE 1,1:PRINT SPC(33):LOCATE 1,45:PRINT SPC(35)
- 430 LOCATE 2,1:PRINT SPC(33):LOCATE 2,45:PRINT SPC(35)
- 440 LOCATE 3,1:PRINT SPC(79)
- 450 LOCATE 4,1:PRINT SPC(20):LOCATE 4,58:PRINT SPC(22)
- 460 LOCATE 5,1:PRINT SPC(20):LOCATE 5,58:PRINT SPC(22)
- 470 LOCATE 6,1:PRINT SPC(20):LOCATE 6,58:PRINT SPC(22)
- 480 LOCATE 7,1:PRINT SPC(20):LOCATE 7,58:PRINT SPC(22)
- 490 LOCATE 8,1:PRINT SPC(79)
- 500 LOCATE 9,1:PRINT SPC(79)
- 510 LOCATE 10,1:PRINT SPC(79)
- 520 COLOR 11,4:GOSUB 1030:PRINT:COLOR 3,0:LOCATE 15,17
- 530 IF N<3 THEN COLOR 11,0:PRINT"You didn't give me much of a chance, did you?":GOTO 600
- 540 PRINT"You scored" R "right out of" T "or" INT(100*R/T) "percent."
- 550 IF R/T<0.6 THEN LOCATE 18,21:PRINT"I'll bet you do better next time.":TIMEOUT=7:GOSUB 1040:RUN
- 560 LOCATE 18,34:IF R/T<=0.8 THEN PRINT"Good score!":GOTO 600
- 570 IF R/T<=0.9 THEN PRINT"Very good!":GOTO 600
- 580 IF R/T<=0.99 THEN PRINT"Excellent!":GOTO 600
- 590 COLOR 19,0:PRINT"Brilliant!"
- 600 COLOR 3,0:LOCATE 25,1:PRINT "Press space bar to continue.";
- 610 IN$=INKEY$:IF IN$="" THEN 610 ELSE GOTO 670
- 620 GOSUB 1030:N=S(XX)
- 630 RESTORE
- 640 IF N>1 THEN FOR O=1 TO N-1:READ A,B,C,D,E,F,G,H,I,J,K,A$:NEXT O:Q=N-1
- 650 GOTO 260
- 660 SYSTEM
- 670 RUN "NUMBERS3
- 680 PLAY "mbn24n19t35":LOCATE 25,1:COLOR 0,4:PRINT"No! Hint: ";:GOSUB 1040
- 690 IF K=1 THEN PRINT"The numbers change by their rule " A$;
- 700 IF K=2 THEN PRINT"Look for more than one rule. One rule is " A$;
- 710 IF K=3 THEN PRINT"The amount of change gets " A$ " each time.";
- 720 IF K=4 THEN PRINT"Alternating series. One rule is " A$;
- 730 IF K=5 THEN PRINT"Look for groups of " A$ " numbers.";
- 740 GOSUB 1040:LOCATE Y1-1,X1+25:PRINT SPC(6):LOCATE ,X1:RETURN
- 750 PRINT:COLOR 4,11:LOCATE ,23:PRINT "VARPTR" STRING$(32,"SOUND") "COLOR"
- 760 LOCATE ,23:PRINT "CALL";:COLOR 11,4:PRINT A B C D E F G H;:COLOR 4,11:PRINT "CALL"
- 770 LOCATE ,23:PRINT "CLS" STRING$(32,"SOUND") "'":PRINT:RETURN
- 780 DATA 10,15,20,25,30,35,40,45,50,55,1,+5
- 790 DATA 13,15,17,19,21,23,25,27,29,31,1,+2
- 800 DATA 10,15,14,19,18,23,22,27,26,31,2,-1
- 810 DATA 10,13,16,19,22,25,28,31,34,37,1,+3
- 820 DATA 14,15,15,16,17,17,18,19,19,20,2,+0
- 830 DATA 29,16,27,17,25,18,23,19,21,20,4,-2
- 840 DATA 48,44,40,36,32,28,24,20,16,12,1,-4
- 850 DATA 11,12,14,15,17,18,20,21,23,24,1,+2
- 860 DATA 32,16,31,17,30,18,29,19,28,20,4,-1
- 870 DATA 12,10,15,11,18,12,21,13,24,14,4,+3
- 880 DATA 15,18,14,17,13,16,12,15,11,14,4,-1
- 890 DATA 11,15,15,12,21,21,13,27,27,14,4,+6
- 900 DATA 13,10,19,16,25,22,31,28,37,34,2,+2
- 910 DATA 11,16,21,26,31,36,41,46,51,56,1,+5
- 920 DATA 30,28,26,24,22,20,18,16,14,12,1,-2
- 930 DATA 18,23,27,32,36,41,45,50,54,59,2,+9
- 940 DATA 13,14,10,15,16,10,17,18,10,19,4,+0
- 950 DATA 10,14,15,19,20,24,25,29,30,34,2,+4
- 960 DATA 12,10,11,12,12,13,12,14,15,12,4,+1
- 970 DATA 12,17,22,22,32,27,42,32,52,37,4,+5
- 980 DATA 10,13,16,19,22,25,28,31,34,37,1,+3
- 990 DATA 35,12,35,13,34,14,34,15,33,16,4,+1
- 1000 DATA 10,14,12,13,14,12,16,11,18,10,4,+2
- 1010 DATA 10,14,16,20,22,26,28,32,34,38,2,+4
- 1020 DATA 21,15,19,17,17,19,15,21,13,23,4,-2
- 1030 FOR Y=11 TO 24:LOCATE Y,1:PRINT SPC(79);:NEXT Y:LOCATE 11,1:RETURN
- 1040 TIMEOUT$=TIME$:TIME2=VAL(LEFT$(TIMEOUT$,2))*120+VAL(MID$(TIMEOUT$,4,2))*60+VAL(RIGHT$(TIMEOUT$,2))
- 1050 TIMEOUT$=TIME$:TIME3=VAL(LEFT$(TIMEOUT$,2))*120+VAL(MID$(TIMEOUT$,4,2))*60+VAL(RIGHT$(TIMEOUT$,2))
- 1060 IF TIMEOUT > TIME3 - TIME2 THEN 1050 ELSE RETURN
- 1070 RNDTIME$=TIME$:RNDVAL=VAL(LEFT$(RNDTIME$,2))*120+VAL(MID$(RNDTIME$,4,2))*60+VAL(RIGHT$(RNDTIME$,2)):RANDOMIZE RNDVAL:RETURN
- 1080 IKEY$=INKEY$:IF IKEY$="" THEN 1080 ELSE RETURN
-